package com.zhongfl.crm.service;

import com.zhongfl.crm.model.LxDepartment;
import com.zhongfl.crm.model.boss.Amiba;

import java.util.List;

/**
 * @author wang.yuchuan
 * @date 2018/9/19
 */
public interface LxDepartmentService {

    /**
     * 根据父id获取子阿米巴
     * @param parentId 父ID
     * @return 子阿米巴
     */
    List<LxDepartment> findByParentId(Long parentId);

    /**
     * 根据励销ID查询阿米巴信息
     * @param lxId 励销Id
     * @return 阿米巴信息
     */
    LxDepartment findByLxId(Long lxId);

    /**
     * 新增部门信息
     * @param lxDepartment
     */
    void insertDepartment(LxDepartment lxDepartment);

    /**
     * 根部主键删除部门
     * @param lxId
     */
    void deletedDepartmentById(Long lxId);

    /**
     *  根据主键更新部门
     * @param lxDepartment
     */
    void updateDepartmentById(LxDepartment lxDepartment);

    /**
     * 查询全部部门
     * @return 部门数据对象集合
     */
    List<LxDepartment> findAllDepartment();

    /**
     * 将所有匹配状态改为'NO'
     */
    void setAllMatchStatusToNo();

    /**
     * 逻辑删除所有未匹配成功的信息
     */
    void deleteNoMatch();

    /**
     * 根据名称查询阿米巴
     * @param name 名称
     * @return 阿米巴
     */
    Amiba findAmibaByName(String name);

    /**
     * 修改匹配阿米巴
     * @param lxDepartment 匹配阿米巴信息
     */
    void updateMatchAmiba(LxDepartment lxDepartment);
}
